package org.lestr.secuel.sogl.lumieres;

import org.lestr.secuel.m3ds.lumieres.Spot;

public class SOGLSpot extends SOGLLumiere implements Spot {
	
	
	// Déclaration des attributs
	private double portée;
	private double angle;
	private double angleX;
	private double angleY;
	private double angleZ;
	
	
	/** Constructeur */
	public SOGLSpot(){
		
		// Instanciation des attributs
		portée = 100;
		angle = 90;
		angleX = 0;
		angleY = 0;
		angleZ = 0;
		
	}// FIN Constructeur
	
	
	/** Défini la portée de la lumière */
	public void setPortée(double portée){
		
		this.portée = portée;
		
	}// FIN defPortée
	
	
	/** Retourne la portée de la lumière */
	public double getPortée(){
		
		return portée;
		
	}// FIN retPortée
	
	
	/** Défini l'angle d'éclairement de la lumière */
	public void setAngle(double angle){
		
		this.angle = angle > 90 ? 90 : (angle < 0 ? 0 : angle);
		
	}// FIN defAngle
	
	
	/** Retourne l'angle d'éclairement de la lumière */
	public double getAngle(){
		
		return angle;
		
	}// FIN retAngle

	
	/** Défini l'angle X de la lumière */
	public void setAngleX(double x){
		
		angleX = x;
		
	}// FIN defAngleX
	
	
	/** Retourne l'angle X de la lumière */
	public double getAngleX(){
		
		return angleX;
		
	}// FIN retAngleX
	
	
	/** Défini l'angle Y de la lumière */
	public void setAngleY(double y){
		
		angleY = y;
		
	}// FIN defAngleY
	
	
	/** Retourne l'angle Y de la lumière */
	public double getAngleY(){
		
		return angleY;
		
	}// FIN retAngleY
	
	
	/** Défini l'angle Z de la lumière */
	public void setAngleZ(double z){
		
		angleZ = z;
		
	}// FIN defAngleZ
	
	
	/** Retourne l'angle Z de la lumière */
	public double getAngleZ(){
		
		return angleZ;
		
	}// FIN retAngleZ
	

}// FIN Classe
